package com.salelogistics.system.api;


import com.salelogistics.common.core.constant.ServiceNameConstants;
import com.salelogistics.common.core.web.domain.AjaxResult;
import com.salelogistics.common.core.web.page.TableDataInfo;
import com.salelogistics.system.api.domain.BasBuildUnit;
import com.salelogistics.system.api.factory.RemoteBasBuildUnitFallBackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 施工单位Service接口
 * 
 * @author ruoyi
 * @date 2023-07-09
 */
@FeignClient(contextId = "remoteBasBuildUnitService",
        value = ServiceNameConstants.BASIC_SERVICE,
        fallbackFactory = RemoteBasBuildUnitFallBackFactory.class)
public interface RemoteBasBuildUnitService
{
    /**
     * 查询施工单位
     * 
     * @param buildId 施工单位主键
     * @return 施工单位
     */
    @GetMapping(value = "unit/{buildId}")
    public AjaxResult selectBasBuildUnitByBuildId(@PathVariable("buildId") Long buildId);

    /**
     * 查询施工单位列表
     * 
     * @param basBuildUnit 施工单位
     * @return 施工单位集合
     */
    @GetMapping(value = "unit/listVo")
    public TableDataInfo selectBasBuildUnitList(@RequestParam("basBuildUnit")BasBuildUnit basBuildUnit);

}
